package br.unicamp.ft.sahp.controller.servico;

import java.util.List;

import br.unicamp.ft.sahp.model.entidades.Avaliador;
import br.unicamp.ft.sahp.model.exception.AvaliadorExistenteException;
import br.unicamp.ft.sahp.model.exception.AvaliadorNaoEncontradoException;

public interface AvaliadorService {
	public abstract void cadastrarAvaliador(Avaliador avaliador)
			throws AvaliadorExistenteException;

	public abstract List<Avaliador> consultarAvaliadoresPorNomeLoginNivel(
			String nomeAvaliador, String loginAvaliador,
			Integer codigoNivelFormacao) throws AvaliadorNaoEncontradoException;

	public abstract Avaliador buscarAvaliadorPeloCodigo(Long codigoAvaliador);

	public abstract void atualizarAvaliador(Avaliador avaliador);

	public abstract void excluirAvaliador(Avaliador avaliador);

	public abstract void excluirAvaliador(Long codigoAvaliador);

	public abstract List<Avaliador> buscarTodosAvaliadores()
			throws AvaliadorNaoEncontradoException;
}
